Career 2025 2024 2023 2022 2021 2020 2019 2018 2017 2016 2015 2014 2013 2012 2011 2010 2009 2008 2007 2006 2004
All Rounds Final 1/2 1/4 First Second Third Fourth Pre-q Rubber 1 Rubber 2 Rubber 3 Rubber 4 Rubber 5 Robin Bronze Q3 N/A Q2 Q1 ER Q4 CR QF Q5 N/A
All Courts Acrylic N/A Clay Grass Carpet Hard I.hard
All Tour Braunschweig Challenger Wimbledon - London U.S. Open - New York Shanghai Rolex Masters - Shanghai Chengdu Open - Chengdu Orleans Challenger Mouilleron-Le-Captif Challenger Sydney Challenger Playford Challenger Bergamo Challenger Matsuyama Challenger M25 Benicarlo M15 Valencia Oeiras 1 Challenger Hong Kong Tennis Open - Hong Kong Australian Open - Melbourne ASB Classic - Auckland Dallas Open - Dallas M15 Bressuire Cherbourg Challenger Pau Challenger BNP Paribas Open - Indian Wells Lille Challenger Abierto Mexicano Telcel - Acapulco Olympics - Paris Hamburg Challenger Miami Open - Miami Barcelona Challenger Mutua Madrid Open - Madrid Madrid Challenger Open Parc - Lyon French Open - Paris cinch Championships - London Porto Challenger Mallorca Championships - Mallorca Pozoblanco Challenger M25+H Ajaccio National Bank Open - Montreal Chengdu Open - Chengdu Western & Southern Open - Cincinnati U.S. Open - New York Porto 2 Challenger Winston-Salem Open - Winston-Salem Rennes Challenger M25+H Bagneres-de-Bigorre Japan Open Tennis Championships - Tokyo Shanghai Rolex Masters - Shanghai Taipei 2 Challenger M25 Monastir Kobe Challenger M15 Monastir National Bank Open - Toronto M15 Monastir BNP Paribas Open - Indian Wells Delray Beach Open - Delray Beach M15 Poitiers Brest Challenger M15 Monastir Adelaide International - Adelaide Australian Open - Melbourne M15 Bressuire Miami Open - Miami M25 Toulouse-Balma Porto 2 Challenger Mutua Madrid Open - Madrid US Men's Clay Court Championship - Houston Internazionali BNL d'Italia - Rome French Open - Paris M25 Mataro Cincinnati Open - Cincinnati Royan Challenger Wimbledon - London Nottingham 3 Challenger Pozoblanco Challenger Mifel Tennis Open - Los Cabos Citi Open - Washington National Bank Open - Toronto U.S. Open - New York Segovia Challenger Cassis Challenger Rennes Challenger Shanghai Rolex Masters - Shanghai Chengdu Open - Chengdu Mouilleron-Le-Captif Challenger Roanne Challenger Jinan Challenger Almaty Open - Almaty France F12 France F15 France F17 France F20 France F1 France F8 France F9 France F10 France F12 Belgium F3 France F13 France F15 France F19 France F20 France F1 France F2 France F4 France F5 Spain F11 Spain F14 France F8 France F10 France F11 France F12 Spain F26 Spain F27 Spain F28 Spain F29 Belgium F2 France F13 France F14 France F15 Spain F34 Spain F35 France F17 France F18 France F19 Spain F37 France F20 Rodez Spain F38 Spain F1 Great Britain F1 Spain F2 Great Britain F2 France F1 Spain F3 France F2 Spain F5 Portugal F1 France F4 Portugal F2 France F5 Spain F10 Spain F11 France F6 Spain F13 Spain F14 Spain F17 Spain F20 Spain F21 France F10 Spain F22 Spain F24 Spain F25 Spain F26 Spain F27 Spain F29 Spain F30 Spain F32 Spain F35 Spain F36 Spain F38 Spain F39 Turkey F1 Turkey F2 Turkey F3 Spain F1 Spain F2 Spain F3 Spain F4 France F4 France F5 Spain F6 Croatia F5 Croatia F6 Spain F10 Spain F11 Spain F12 Spain F13 Spain F15 Spain F16 Belgium F1 Netherlands F4 Spain F20 Spain F21 Spain F22 Italy F22 USA F1 USA F2 Spain F2 Spain F4 France F4 Spain F6 Spain F7 Spain F8 Spain F9 Spain F14 Italy F22 Spain F32 Portugal F9 USA F28 Spain F15 USA F3 Spain F1 Spain F3 France F19 France F12 France F13 France F2 France F2 France F3 Belgium F2 France F7 France F4 France F18 Spain F39 Spain F6 Spain F9 M15 Manacor M15+H Bagnoles-de-l'Orne M15+H Bressuire M15 Faro M15 Toulouse M15 Sintra M25+H Rodez M15 Benicarlo M15 Madrid M15 Manacor M15 Manacor M25 Faro M25 Vale do Lobo M15 Poitiers M25 Reus M25 Montauban M15 Xativa M25 Bagneres-De-Bigorre M25 Toulouse M15 Manacor M25 Vale do Lobo M15 Creteil M15 Poitiers M25 Toulouse-Balma M25 Angers M25 Vic M25 Montauban M15 Madrid M15 Poitiers M25+H Rodez M15 Vale Do Lobo M15+H Bressuire M25 Vale do Lobo M25 Angers M15 Las Palmas de Gran Canaria M25+H Ajaccio M25 Santander Quimper Challenger Bordeaux Challenger Recanati Challenger Istanbul Challenger Rennes Challenger Quimper Challenger Cherbourg Challenger Bath Challenger St. Brieuc Challenger M25 Monastir Tunis Challenger Bordeaux Challenger Nottingham Challenger Scheveningen Challenger M25 Reus Recanati Challenger Pozoblanco Challenger Cordenons Challenger Segovia Challenger Alphen Challenger St. Remy Challenger Petange Challenger Seville Challenger Szczecin Challenger Orleans Challenger Mons Challenger Sacramento Challenger Tiburon Challenger M25 Carnac Rennes Challenger Charlottesville Challenger Bratislava Challenger Yokohama Challenger Quimper Challenger Cherbourg Challenger St. Brieuc Challenger Panama City Challenger Tunis Challenger Tallahassee Challenger Bordeaux Challenger Nottingham Challenger Furth Challenger Prague Challenger Milan Challenger Todi Challenger San Benedetto Challenger Recanati Challenger Guimaraes Challenger San Marino Challenger Cordenons Challenger Como Challenger St. Remy Challenger Petange Challenger Kenitra Challenger Mons Challenger Rennes Challenger Seoul Challenger Bratislava Challenger Yeongwol Challenger Chitre Challenger Cherbourg Challenger Guadalajara Challenger Barranquilla Challenger Le Gosier Challenger Sarasota Challenger Tunis Challenger Rome Challenger Bordeaux Challenger Nottingham Challenger Caltanissetta Challenger Todi Challenger Scheveningen Challenger Poznan Challenger Vancouver Challenger Aptos Challenger St. Remy Challenger Seville Challenger Knoxville Challenger Cherbourg Challenger Quimper Challenger Le Gosier Challenger Mersin Challenger Vercelli Challenger Rome Challenger Bordeaux Challenger Furth Challenger Marburg Challenger Braunschweig Challenger Poznan Challenger Aptos Challenger Vancouver Challenger Cordenons Challenger Manerbio Challenger Genova Challenger Barranquilla Challenger Trnava Challenger Orleans Challenger Rome Challenger Mons Challenger Casablanca Challenger Kobe Challenger Yokohama Challenger Canberra Challenger Cherbourg Challenger Quimper Challenger Shenzhen Challenger Rome Challenger Furth Challenger Lyon Challenger Braunschweig Challenger Segovia Challenger Cordenons Challenger Manerbio Challenger Como Challenger Genova Challenger Seville Challenger Mons Challenger Ho Chi Minh City Challenger Eckental Challenger Koblenz Challenger Maui Challenger Cherbourg Challenger Santiago Challenger Buenos Aires Challenger Bordeaux Challenger Surbiton Challenger Lisbon Challenger Perugia Challenger Genova Challenger Szczecin Challenger Orleans Challenger Ortisei Challenger Ningboo Challenger Traralgon Challenger Canberra Challenger Eckental Challenger Noumea Challenger Koblenz Challenger Rennes Challenger Cherbourg Challenger Lille Challenger Aix En Provence Challenger Bordeaux Challenger Lisbon Challenger Poznan Challenger Lyon Challenger M25 Porto Koblenz Challenger Bordeaux Challenger Parma Challenger Recanati Challenger Amersfoort Challenger Cherbourg Challenger St. Tropez Challenger Koblenz Challenger Salzburg Challenger M25 Toulouse-Balma M15 Azay-le-Rideau M25 Vic Mauthausen Challenger M25 Mataro Orleans Challenger M25 Villeneuve-Loubet M15 Gijon M25 Monastir M25 Hazebrouck M25 Esch/Alzette M15 Lons-le-Saunier M15 Monastir M15 Monastir M25 Villeneuve-Loubet BMW Open - Munich AEGON Championships - London Open de Moselle - Metz Open 13 - Marseille Open de Nice Cote d'Azur - Nice AEGON Championships - London Moselle Open - Metz Apia International - Sydney Open Sud de France - Montpellier Cherbourg Challenger Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona AEGON International - Eastbourne Credit Agricole Suisse Open - Gstaad Bet-at-home Cup - Kitzbuhel Moselle Open - Metz If Stockholm Open - Stockholm Qatar ExxonMobil Open - Doha Open Sud de France - Montpellier Royal Guard Open Chile - Vina del Mar Copa Claro - Buenos Aires Open 13 - Marseille Grand Prix Hassan II - Casablanca Barcelona Open BancSabadell - Barcelona Portugal Open - Oeiras Open de Nice Cote d'Azur - Nice AEGON Championships - London Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Credit Agricole Suisse Open - Gstaad Bet-at-home Cup - Kitzbuhel Moselle Open - Metz Malaysian Open - Kuala Lumpur Rakuten Japan Open - Tokyo Erste Bank Open - Vienna Swiss Indoors Basel - Basel Brisbane International - Brisbane Heineken Open - Auckland Open Sud de France - Montpellier Orleans Challenger Open 13 - Marseille Grand Prix Hassan II - Casablanca Heilbronn Challenger Challenger DCNS de Cherbourg - Cherbourg Topshelf Open - 's-Hertogenbosch SkiStar Swedish Open - Bastad Bet-at-home Open - Hamburg Credit Agricole Suisse Open - Gstaad Austrian Open - Kitzbuhel Cherbourg Challenger Heilbronn Challenger Moselle Open - Metz Savannah Challenger Como Challenger Blois Challenger Erste Bank Open - Vienna Valencia Open - Valencia Millennium Estoril Open - Estoril Open Sud de France - Montpellier Cordenons Challenger Rio Open - Rio de Janeiro Open 13 - Marseille Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona BRD Nastase Tiriac Trophy - Bucharest Seville Challenger Bet-at-home Open - Hamburg SkiStar Swedish Open - Bastad Generali Open - Kitzbuhel Moselle Open - Metz Rakuten Japan Open - Tokyo European Open - Antwerp Qatar ExxonMobil Open - Doha Open Sud de France - Montpellier Yokohama Challenger Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril AEGON Championships - London Konzum Croatia Open - Umag Bet-at-home Open - Hamburg Suisse Open - Gstaad Abierto Mexicano - Los Cabos Moselle Open - Metz Rakuten Japan Open - Tokyo European Open - Antwerp Swiss Indoors Basel - Basel ASB Classic - Auckland Mestre Challenger Open Sud de France - Montpellier Cagliari Challenger New York Open - New York Delray Beach Open - Delray Beach Open 13 Provence - Marseille Abierto Mexicano Telcel - Acapulco Bordeaux Challenger Barcelona Open BancSabadell - Barcelona Millennium Estoril Open - Estoril TEB BNP Paribas Istanbul Open - Istanbul Antalya Cup - Antalya Plava Laguna Croatia Open - Umag Generali Open - Kitzbuhel Winston-Salem Open - Winston-Salem Moselle Open - Metz Shenzhen Open - Shenzhen Rakuten Japan Open - Tokyo European Open - Antwerp Intrum Stockholm Open - Stockholm Swiss Indoors Basel - Basel Brisbane International - Brisbane Sydney International - Sydney Orleans Challenger Argentina Open - Buenos Aires Rio Open - Rio de Janeiro Brasil Open - Sao Paulo Grand Prix Hassan II - Marrakech Barcelona Open Banc Sabadell - Barcelona BMW Open - Munich Geneva Open - Geneva Open Parc - Lyon Nature Valley International - Eastbourne Swiss Open - Gstaad Abierto Mexicano de Tenis Mifel - Los Cabos Mons Challenger Rakuten Japan Open - Tokyo Tata Open Maharashtra - Pune Rennes Challenger Forte Village Sardegna Open - Sardinia Sofia Open - Sofia Murray River Open - Melbourne Serbia Open - Belgrade Charlottesville Challenger BMW Open - Munich Nordea Open - Bastad Mouilleron-Le-Captif Challenger Singapore Tennis Open - Singapore Anytech365 Andalucia Open - Marbella Adelaide International 1 - Adelaide Dubai Duty Free Tennis Championships - Dubai Serbia Open - Belgrade cinch Championships - London Mallorca Championships - Mallorca Truist Atlanta Open - Atlanta Citi Open - Washington Winston-Salem Open - Winston-Salem Swiss Indoors Basel - Basel San Diego Open - San Diego Korea Open - Seoul Adelaide International 1 - Adelaide Delray Beach Open - Delray Beach Abierto Mexicano Telcel - Acapulco Cherbourg Challeger Banja Luka Open - Banja Luka Noumea Challenger Rakuten Japan Open - Tokyo St. Brieuc Challenger Mifel Tennis Open - Los Cabos BMW Open - Munich Prague Challenger Como Challenger Bordeaux Challenger Bordeaux Challenger Sassuolo Challenger Troyes Challenger Open D'Orleans - Orleans Orleans Challenger Suzhou Challenger Budapest Challenger Kobe Challenger Noumea Challenger Rennes Challenger Wroclaw Challenger St. Brieuc Challenger Sophia Antipolis Challenger Mallorca Challenger St. Brieuc Challenger Monza Challenger Recanati Challenger Seville Challenger Toyota Challenger Pozoblanco Challenger Blois Challenger Perugia Challenger Segovia Challenger Seville Challenger Szczecin Challenger Orleans Challenger Florence Challenger St. Remy Challenger Noumea Challenger Mons Challenger Aix En Provence Challenger Orleans Challenger Prague Challenger Eckental Challenger Szczecin Challenger Pau Challenger Forli 6 Challenger Orleans Challenger Karlsruhe Challenger Mouilleron-Le-Captif Challenger Hamburg Challenger Brest Challenger Bergamo Challenger Roanne Challenger Oeiras 2 Challenger Porto Challenger Monterrey Challenger Lugano Challenger Bratislava Challenger Helsinki Challenger Girona Challenger Lille Challenger Madrid Challenger Noumea Challenger Oeiras 3 Challenger Rome Challenger Mouilleron-Le-Captif Challenger Aix En Provence Challenger Cagliari Challenger Turin Challenger Roanne Challenger Perugia Challenger St. Brieuc Challenger Seoul Challenger Geneva Challenger Seoul Challenger Szekesfehervar Challenger Canberra Challenger San Diego Challenger Phoenix Challenger Cherbourg Challenger Troisdorf Challenger Oeiras 5 Challenger Guangzhou Challenger Perugia Challenger Bordeaux Challenger Mouilleron-Le-Captif Challenger Guangzhou Challenger Aix En Provence Challenger Nottingham Challenger Braunschweig Challenger Scheveningen Challenger Vancouver Challenger Como Challenger Sibiu Challenger Mouilleron-Le-Captif Challenger Kobe Challenger St. Brieuc Challenger Alicante Challenger Sarasota Challenger Barcelona Challenger Mouilleron-Le-Captif Challenger Phoenix Challenger Lille Challenger St. Brieuc Challenger Sophia Antipolis Challenger Lisbon Challenger Vicenza Challenger Prostejov Challenger Blois Challenger Milan Challenger Perugia Challenger Segovia Challenger Aptos Challenger Portoroz Challenger Genova Challenger Szczecin Challenger Biella Challenger Fairfield Challenger Las Vegas Challenger Charlottesville Challenger Knoxville Challenger Canberra Challenger Burnie Challenger Cherbourg Challenger Indian Wells Challenger Prostejov Challenger Parma Challenger Istanbul Challenger Hamburg Challenger Cherbourg Challenger Nur-Sultan 2 Challenger Marbella Challenger Belgrade Challenger Heilbronn Challenger Oeiras 3 Challenger Lyon Challenger Salzburg-Anif Challenger Rennes Challenger Braga Challenger Lisbon Challenger Mouilleron-Le-Captif Challenger Brest Challenger Las Vegas Challenger Roanne Challenger Bari Challenger Charlottesville Challenger Turin Challenger Rome 1 Challenger Prague 2 Challenger Bordeaux Challenger Vicenza Challenger Lyon Challenger Troyes Challenger Braunschweig Challenger Porto Challenger Amersfoort Challenger Pozoblanco Challenger Segovia Challenger Prague 3 Challenger Cassis Challenger Rennes Challenger Valencia Challenger Maia Challenger AEGON Championships - London Oeiras 1 Challenger Ottignies-Louvain-la-Neuve Challenger Koblenz Challenger Cherbourg Challenger Pau Challenger Maia Challenger BNP Paribas Masters - Paris Sony Open Tennis - Miami Monte-Carlo Rolex Masters - Monte-Carlo BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Sony Open Tennis - Miami BNP Paribas Masters - Paris BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid BNP Paribas Masters - Paris EFG Swiss Open - Gstaad Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Internazionali BNL d'Italia - Rome Monte-Carlo Rolex Masters - Monte-Carlo Shanghai Rolex Masters - Shanghai BNP Paribas Open - Indian Wells Miami Open - Miami Shanghai Rolex Masters - Shanghai BNP Paribas Masters - Paris Swiss Indoors Basel - Basel BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo Mutua Madrid Open - Madrid Internazionali BNL d'Italia - Rome Internazionali BNL d'Italia - Rome BNP Paribas Open - Indian Wells BNP Paribas Open - Indian Wells Miami Open - Miami Monte-Carlo Rolex Masters - Monte-Carlo National Bank Open - Montreal Western & Southern Open - Cincinnati BNP Paribas Open - Indian Wells Miami Open - Miami Mutua Madrid Open - Madrid Apia International - Sydney Wimbledon - London Winston-Salem Open - Winston-Salem Astana Open - Astana Nordea Open - Bastad Dallas Open - Dallas M25 Roehampton Plava Laguna Croatia Open - Umag Hall of Fame Tennis Championships - Newport Plava Laguna Croatia Open - Umag Citi Open - Washington Delray Beach Open - Delray Beach Almaty Open - Almaty Open Sud de France - Montpellier Qatar ExxonMobil Open - Doha Tennis Napoli Open - Naples cinch Championships - London Open Sud de France - Montpellier US Men's Clay Court Championship - Houston Aircel Chennai Open - Chennai ABN AMRO World Tennis Tournament - Rotterdam Barcelona Open BancSabadell - Barcelona Aircel Chennai Open - Chennai Millennium Estoril Open - Estoril AEGON Championships - London Swiss Open - Gstaad Abierto Mexicano Telcel - Acapulco Rakuten Japan Open - Tokyo ASB Classic - Auckland French Open - Paris Wimbledon - London Internazionali BNL d'Italia - Rome U.S. Open - New York Australian Open - Melbourne Wimbledon - London Australian Open - Melbourne Mallorca Challenger Western & Southern Open - New York French Open - Paris Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne French Open - Paris Wimbledon - London French Open - Paris U.S. Open - New York U.S. Open - New York Monte-Carlo Rolex Masters - Monte-Carlo Australian Open - Melbourne Internazionali BNL d'Italia - Rome French Open - Paris Wimbledon - London Western & Southern Open - Cincinnati Wimbledon - London U.S. Open - New York Australian Open - Melbourne U.S. Open - New York Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open Qualifying - Doha Australian Open - Melbourne French Open - Paris U.S. Open - New York Australian Open - Melbourne French Open - Paris Wimbledon - London Australian Open - Melbourne Monte-Carlo Rolex Masters - Monte-Carlo French Open - Paris Davis Cup, World Group, QF, JPN-CZE 0-5 Davis Cup, World Group, PO, JPN-UKR 5-0 Davis Cup, World Group, 1R, JPN-ITA 1-3 French Open - Paris Davis Cup, Qualifiers, 1R, SWE-JPN 3-2 Davis Cup, Group I, PO, JPN-POL 4-0 Davis Cup, World Group, 1R, GBR-JPN 3-1 Davis Cup, World Group, 1R, JPN-FRA 1-4 U.S. Open - New York Davis Cup, World Group, PO, JPN-BIH 4-0 Davis Cup, World Group, QR, CHN-JPN 2-3 Internazionali BNL d'Italia - Rome Wimbledon (juniors) U.S. Open (juniors) All Lower level tournaments French Open (juniors) Olympics - Rio de Janeiro Olympics - Tokyo M15+H Bagnoles de l'Orne Davis Cup, World Group, PO, COL-JPN 2-3 Hopman Cup - Perth M25 Porto M15 Monastir